from utils.electrode_ctrl import ElectrodeCtrl

import utils.pressure_recv_svr

from utils.linear_map import linear_map

from utils import pulse

import numpy as np

if __name__=='__main__':
    # 声明电极驱动板
    _1st_finger_elec = ElectrodeCtrl('COM99', 115200, 'com') # 大拇指板子串口号

    # 启动电刺激线程
    pulse.start_pulse_manager()

    # 设计一个8x8叉形状的矩阵
    cross_matrix = np.eye(8)  # 创建一个8x8的单位矩阵
    for i in range(8):
        cross_matrix[7-i][i] = 1  # 把副对角线上的元素也设为1

    # 设定：这个函数是非阻塞的，设定好可以去干其他的事情
    pulse.set_pulse(
        elec = _1st_finger_elec,# 要设定的板子
        arr = cross_matrix,     # 要呈现的8x8矩阵
        burst_period_ms = 1000, # BP（毫秒）
        pulse_count = 3,        # PN（脉冲数量）
        pulse_period_ms = 200,  # PP（毫秒）
        pulse_width_percent=50, # PN（百分制，百分比于PP）
        voltage = 100,          # 电压（伏特）
        pulse_type = 'neg'      # 阳极或阴极刺激，可选 'pos' 或 'neg'
    )

    input('')